The online racing simulator
Searching in All forums
(242 results)
Progress Report, December 2020
Scawen
Developer
Hello Racers,

Since the September update we have kept working hard. Eric has continued with South City, which is now a very open town area with many connecting roads. There are car parks, squares, back streets and new roads. It has taken longer than any of us expected because of the size of the area and amount of detail. My work has also taken many turns, supporting the new open city area as described in previous reports. Eric will now be starting on Fern Bay although there are still things to be finished at South City and Kyoto. I decided to present this progress report as a cut down list of updates from a few development versions since September. It gives a little insight into the process without going into too much detail about many other minor changes that there are in each version. Be warned, although cut down it's still a list of technical changes! It may be best to scroll down and look at the screenshots. Smile


23 Oct - Lighting updates

More accurate baked lighting render for artificial lights. Drawn at higher resolution which allows more accurate results from small, bright lights in the middle distance, but with changes that allow it to run faster. Other track editor improvements. Some changes so that the apparent brightness of lights corresponds exactly with their actual lighting effect. Improved automatic exposure quality by analysing a larger texture in the compute shader.

30 Oct - Turbine updates

Wind turbines now use static vertex buffers, similar to the way a car is drawn. This allows higher resolution turbine models. The turbine code was generalised to allow 3D clock hands for city buildings.

02 Nov - Editor updates

More editor updates to allow easier positioning and alignment of objects.

13 Nov - Updates for sections

Physics enabled for the triangles on sections. Sections are the cross-sectional objects between the segments which are used for most physical surfaces in LFS (e.g. road, fences, walls). Some sections have their own surfaces (e.g. at the end of a wall) but previously they were non-physical. Editor updates to allow easier selection of objects. Slight changes to ensure that triangles on some types of connected objects are in exactly the same place, to avoid light bleeding through cracks.

20 Nov - Various editor improvements and fixes

Doubled the speed of the offline occlusion render by use of batched rendering. Enabled lights on turbines and clocks. Shader optimisation, using 4x3 matrices instead of 4x4 where possible.

18 Dec - Updates for collision with unmovable objects

Updates to the physics of unmovable objects (e.g. buildings, grandstands, smaller objects). Previously, unmovable objects used the same system as as movable objects. Now they have a more compact mesh which saves memory and CPU usage. They are now stored in the same map square system as the sections and segments. The map square system has been upgraded, to reduce the CPU time for detecting nearby objects. A discontinuity in the trunk physics calculation has been removed.

A new visualisation for the track editor shows the physical world clearly, including the physics meshes and trunk objects. Objects now have a 'surface type' that was previously only available for segment surfaces. More surface types have been added, such as rubber (tyres and some barrier linings), wood (several fences) and plastic (various barrier signs and temporary barriers). An intermediate scrape sound effect has been added for wood and plastic, avoiding the soft impact sound and the metallic scrape. The calculation for the stereo effect of the scrape sound has been improved. The colour of dust kicked up by tyres is now either white or beige depending on the surface, instead of taking on the average colour of the surface.


Eric has sent some screenshots of the latest version of South City. We hope you like the pictures.

Remember to check out the LFS calendar for racing events and follow us on Twitter.

Have a good holiday!
Scawen
Developer
Hello programmers,

I've come across this again in the code and think I should ask you again now that the current system has been around for years.

I've been updating the collision detection of non-movable objects. There are so many objects around now, it has become quite inefficient to use the old system which uses the storage system of a movable physics object even for unmovable objects. I'm now using a much more compressed data structure for unmovable objects, that uses less memory and CPU.

But now that the movable and unmovable objects use a different type of data structure, it has become harder to support the reporting of contacts with unmovable objects.

I'm wondering if it is reasonable to stop reporting collisions with unmovable layout objects now. The way I'm thinking of this, the unmovable layout objects would be treated just the same as default non-layout objects that Eric has placed.

Movable objects would continue to be reported as before.
Scawen
Developer
Thank you for the feedback, pleased you like the progress so far.

I have a bit more to do on the graphics, though I want to spend some time on the physics soon.

A couple of urgent things I can think of.

- I want to convert the 'individual car diffuse lighting calculated from dynamic environment map' into a compute shader so I can use it for all the cars that have an environment map. More distant cars will use the 'approximate diffuse' lighting that is currently in the paths. That's only about a day or two's work, I think, as it's a simple compute shader (and a conversion of existing code).

- The approximate lighting, for more distant cars and will also be useful for temporary objects like physics objects, layout objects and skid marks. It always was stored in the paths. But now I think it can use the occlusion octree, as that already covers all driveable areas. This sounds like a few days work.

- One obvious thing is clouds in the sky but I really don't want skies to prevent work on the physics. In my mind this can be released without clouds, but cannot be released without the physics updates.

- Various things on paper lists here but I am actually crossing them off faster than adding them now.

On Eric's side there are still plenty of holes and gaps at South City, mainly because there are really a lot of new roads and connections and he has been filling those new places up with detailed buildings. Some more holes to fill at Kyoto, and there is Fern Bay too. So both of us will still be busy for quite a while.

Quote from Degats :Eric's been busy

Obligatory comparisons:

Thanks for the comparison shots!

Quote from kagurazakayukari :Wow! a lot of information!
Blow my mind XD

Again, had translated into Chinese~

Thank you for that! Smile
September Progress Report
Scawen
Developer
Hello Racers,

In our last report on the website we showed some images of the updated South City and demonstrated day to night transitions and night driving. Since then, Eric has continued to work on South City and Scawen has continued to develop the graphics system. We posted some intermediate progress reports on the forum.

In this report we will link to the intermediate reports, talk about more recent updates and show some new screenshots. The information is quite technical so if you aren't that interested in the internals of game development, feel free to skip straight to the screenshots which can hopefully speak for themselves!

September Progress Report

We hope you like the pictures and videos!
June Progress Report
Scawen
Developer
Dear Racers,

In the March report I described how Live for Speed has been converted to use Direct3D 11. I've now started to use some of the features that Direct3D 11 allows.

Most interesting is the image-based automatic exposure. As we have moved to more physically based lighting, allowing day to night transitions and realistic brightness for artificial lights, there are many reasons why the exposure level needs to be adjusted. Not only for different times of day but also for the lighting conditions at any location. An extreme example is when you enter a multi-storey car park on a sunny day. The exposure level must adapt to what you can see, just as your eyes or a camera would do in reality. This is demonstrated in the video below. If you don't notice it happening too much then it's working well. Without the automatic exposure it would be very dark inside or totally overexposed outside.



On the technical side, a reduced copy of the output image (that has already been generated for the bloom effect) is transferred to memory that the CPU can read. Direct3D 11 allows this to be done without waiting. A histogram is constructed so the program can estimate the exposure level to use. The brightness is then adjusted to that target over several frames.

These car parks don't have a path with pre-generated lighting values or any light probe information (yet) so I added a system to allow the ambient lighting to be calculated in real time by analysing a copy of the car's unique environment map. In the video, this allows the car to be lit by the artificial lights and avoid being lit by the sky. It's probably not the best way to get the diffuse lighting in car parks but it is a good fallback when there is no data available.

Eric has continued working on South City. It's a longer process than any of us had imagined, because he has been updating most of the buildings with more detailed architecture and opening up new roads around the city. He doesn't want to show a lot of new areas yet because there are too many holes around but some night and day shots of similar scenes are attached below.

Other updates I wont try to cover in detail include some features to help Eric in the editors and completing the conversion to Direct3D 11. Support for Direct3D 9 has now been dropped as it was not reasonable for me to try to maintain the two versions. The GPU requirements are higher now so I wouldn't expect it to run well on a Direct3D 9 graphics card anyway.

We're getting there gradually. It's a lot of work on the programming side and the content side but we like the results!
Scawen
Developer
You are asking the wrong person!

I'm making the improvements to the graphics system which Eric uses to update the tracks.

I think his approach is a combination of working with what's there, adjusting it to be a better version of his original vision for the track and considering feedback from users over the years.

I hope Fern Bay retains its original character and doesn't become too modernised.
Scawen
Developer
Thank you all for the comments.

Quote from Keiichi_Tsuchiya :Wow, this is unexpected. This is good news, I thought you will stick with dx9. Did you play with compute shader stuff yet?

No, so far I've just been trying to finish off the conversion, there were quite a few loose ends I still had to sort out even after it was solid enough for Eric to start using it for the editors.

Quote from Degats :Obligatory comparisons:

https://imx.tc-g.uk/so202003/01
https://imx.tc-g.uk/so202003/02
https://imx.tc-g.uk/so202003/03

Thanks!

Quote from Degats :DirectX 10 was a complete rewrite...

Thanks for the comments. It was interesting to see that CPU usage was down while frame rate was up.

Quote from kagurazakayukari :btw translation work done Smile http://bbs.srfc.com.cn/forum.php?mod=viewthread&tid=187732

Thank you!
March Progress Report - LFS in Direct3D 11
Scawen
Developer
Dear Racers,

We hope you are keeping well in these unusual times. LFS online activity has been higher than usual due to the lockdowns so I hope most of you can find a good race!

We don't want to do a full progress report this month but I can tell you a few things that have been going on this year.

Eric has been continuing to work on South City. He has been updating a lot of the buildings to give them a more detailed three dimensional structure. Progress is good but there are still holes and unfinished objects around. For this progress report he wanted to stay focussed instead of stopping to clean things up for another big round of screenshots.

On my side the main news is that LFS has been converted to use Direct3D 11. A lot of developers have had to go through this process at some point and we are later than most. It is a quite long and meticulous process because it's not as simple as renaming a few D3D9 functions to a new D3D11 style. Some parts of the update were relatively easy like that but other areas of code needed to be done a completely different way.

After all the graphical glitches were sorted out the frame rate was notably higher than the D3D9 version. I don't know exactly why that is but I did take time to do the proper restructuring so that D3D11 would work cleanly. There are various other possibilities in D3D11, although there are no visual changes in LFS yet. For example you can request information from the graphics card without slowing things down. It could be used to read back some data about the current image to adjust the brightness (eye adaptation / auto exposure). I'd like to try a live 'audio render' to create the reverberation more accurately depending on your car's location instead of relying on pre-generated echo maps.

This change does mean that some older graphics cards will no longer be supported. At the moment LFS can still be compiled to use D3D9, but it will be hard to maintain the two versions, specially when we start to use the possibilities that D3D11 offers. For now I am using the D3D10 feature level, which means it works on D3D10 graphics cards. There is no guarantee about that at this point but that's what I'm aiming for now. I know that some people don't have a D3D10 (or later) graphics card and in that case I don't think LFS will work on their computer. But I think that's quite rare so it seems like the time has come to drop support for D3D9 graphics cards. I'm not exactly sure when Direct3D 10 support became common but it has been around since 2007 and Direct3D 11 graphics cards were available in 2009. According to the Steam Survey most gamers have a D3D11 or D3D12 GPU and a few percent have a D3D10 GPU.

Apart from all that technical stuff I did one visual update. The individual tree objects can now move with the wind. Not only the old auto-generated trees (which have been improved) but all the other individual trees and bushes too. It's a fairly subtle effect but it does make the place seem a bit more alive.

A few images are attached, showing some updated areas at South City, with LFS in Direct3D 11.
Scawen
Developer
I thought we did quite a big progress report in December so I'm surprised people are getting a little impatient again. It doesn't seem very long ago.

We are working hard and don't have anything to say at the moment. I'm trying to get the graphics code finished and Eric is working on South City. But I don't think that is really new information.

I will close the thread now. Thank you all for the feedback and I'm pleased you like what you see, so far.
December Progress Report: South City
Scawen
Developer
Hello Racers,

In our July progress report we talked about the realtime sky that allows day to night transitions and showed screenshots of the Kyoto track area. Since then, Eric has been working on South City and I have continued with the lighting. More roads have been opened up and you can drive into the multistorey car parks. Road surfaces, fences, barriers, objects and various buildings have been updated. There is still a way to go but we would like to show you some of the changes so far.

December Progress Report: South City

We hope you like the pictures and videos!

Scawen
Scawen
Developer
Quote from Eclipsed :Fact you can't deny - we can't change the world order by discussing situation here,so why bother? Let's focus on the sim,which is quite big hobby for many of us around here.

Actually I think we can change the world by talking about it! It can't start any other way. We need to talk about that everywhere.

I believe online is a good place to talk about these things. Often in social situations people just want to have fun and not talk about important issues as they are too serious. Often in family situations it's not worth discussing because it can cause arguments. So we need to talk about it, and share views wherever we can.

A lot has happened this year to bring this stuff into mainstream conversation. Not as if it was hidden before. A lot of people have been trying to bring attention to the destruction of nature for a very long time, but somehow most people could avoid bothering to think about it, as if it wasn't urgent. But the truth is it has been increasing in urgency since the 60s and 70s. Finally environmental concerns are becoming mainstream and even politicians are talking about it, not only the Green party. Their efforts so far have been very minimal, quite pathetic in fact, and we have still been destroying our environment at an increasing rate.

We live in democracies so it is *us* who have to vote for the politicians who will take bold actions to drastically reduce environmental damage before it is too late.

Quote from Pasci :Scawen: Can we expect a new progress report for this month/in the next few days from Eric and you? Or are you not ready for that yet?

Thanks anyway

I haven't asked Eric about that, I've just recently sent him an update with the bloom and various lighting updates. I know he has been working on South City the whole time and I'm sure he'd like to show it soon. I've got some things to finish off. Like today I am trying to get the bloom working properly in VR.

I'm guessing we won't show anything this weekend, but it would be nice if we could prepare a progress report in mid-December.
Scawen
Developer
Quote from Bose321 :You said something about the calculation of fog, does that mean that's also coming in a new patch? (or is it already included? Haven't played LFS for a while).

There's already fog in public LFS but it is linear. The new version has exponential fog which is closer to reality. I'm not talking about thick fog, just the normal slight visibility reduction due to distance.

Anyway here's another couple of pictures. Note, Eric hasn't worked on the lighting in this version of Blackwood, it's just my test version with the lights switched on and things aren't really balanced correctly yet.
Scawen
Developer
We are really far from a test version yet!

On my side there is still work to do on the graphics. I'm working on a bloom effect right now. I still need to improve the baked lighting rendering system to reduce some ugly vertex lighting issues you don't see too much of in my well-placed screenshots. Wink

Then I still need to work on the physics and improve the security of the master server protocol.

Meanwhile Eric is continuing with South City, and still needs to finish Kyoto and update Fern Bay.
Scawen
Developer
I think it works nicely at South City.
The attached shot is of the OLD South City, which I have been using for testing purposes.
This is NOT the updated South City which Eric has been working on.
October Progress Report
Scawen
Developer
Dear Racers,

Thank you for your patience as it's been a long time since the July progress report.

We aren't ready for a full progress report but thought we could say a few words and show you a few things. Eric has been continuing with South City. It's a long job and he has worked more on the roads than the buildings so far. At this point he would rather wait until more buildings are done before showing screen shots.

I've been working on the sky darkness, automatic exposure and white balance that became necessary with the use of the realtime generated skies. The lighting is now separated into lights that are always on and others that only come on at night. I increased the possible intensity of lighting to allow floodlights to work.

I worked on a system to allow us to use realistic camera exposure settings to allow comparisons with photographs from digital cameras. In a manual exposure mode I can now set the ISO, f-stop and shutter speed. It is interesting to see the massive variation in the brightness and therefore the exposure required for a night shot and a day shot. For example a shot taken in street lighting may require around 4000 times the exposure compared with a day shot. A more extreme example is the difference between moonlight and sunlight. The sun is 400 thousand times brighter than a full moon, yet our eyes can adapt to see quite well at those extremes.

I haven't had to make LFS adapt so much but it does have to deal with bright sunlight down to typical street lighting scenes. There is more to be done and the lighting is far from perfect. Anyway I hope you like the attached screenshots and the youtube videos.

Day to night transition at Blackwood:


Day to night transition at Kyoto Ring:
Scawen
Developer
I asked Eric but he doesn't want to show South City screenshots yet.

He's been working on it, changing all the road surfaces and building some ways through that were blocked off before. It's not just the roads but barriers, fences, walls, etc. And many buildings will be updated.

It's a big job but will be worth the wait.
Scawen
Developer
Quote from Keiichi_Tsuchiya :Really good job, guys! Physical sky, SH lighting, HDR, ect...
You took a deep dive into graphics programming. LFS is looking really good. Can't wait to play!
One thing I noticed — I didn't saw any bump mapping. Is it work in progress or You are happy with it at current state?

Yes, one thing really leads to another as you mentioned in your post in the February report. The blended skies had certain issues that were solved by these realtime skies whose code has kindly been made available on the internet with a permissive license. But it took a while to get them in and they resulted in a lot of changes to how the system works.

About bump mapping, Eric has asked for that a long time ago but I am not keen to develop it now, with the extra shaders and more data for every vertex, and increased data bandwidth and GPU usage for the pixel shaders. I'm very interested in trying to keep the frame rates high and see how it goes with the current version, that is already a lot heavier than the old. Also for me it doesn't seem totally straightforward to implement, when starting to think about helper functions for the normal maps and new material types to support the maps. There's too much in my mind already and I don't want to get bogged down so for now I really think the other things have a higher priority. In my mind the bump maps can be done after this release as I think Eric has made very good use of the current system with the updated tracks. Then various materials could be updated to take advantage of bump mapping.

Quote from Keiichi_Tsuchiya :For cloud rendering solution, are you want to go for fully dynamic volumetric system or something simple pre-baked?

It's a good question and I don't know the answer but I'll try to do something simple at first and see how it looks.

Quote from valiugera :oh wait a second, is that a holes? Confused

Yes there are still some holes, Kyoto is not yet finished. Eric was doing so many adjustments of corners and so on, he wanted a break to do something new so he has moved onto South City for now where he can get some more visible results in a shorter time.

Quote from kagurazakayukari :Published and translated to Chinese on SRFC √

Nice work~

Thank you!
Scawen
Developer
Quote from Xenix74 :...
Scawen once said something like:
"Lfs does not make your life better".
...

Hmm, I wonder what I really said. That doesn't sound right, because LFS is supposed to be a form of entertainment. That *should* be a small part of "making your life better" just as watching a good film or reading a book can do.

Definitely we all should relax, have fun and play around a bit and that is a good thing and this is my intention for LFS.

There is also an educational aspect to it, in the sense that a lot of people have learned more about driving, physics, racing and so on. As it becomes more realistic, the educational aspect improves. On my side with the physics and on Eric's side the structure of race tracks, roads and so on. This is also supposed to be a small part of "making your life better" if you want to put it that way.

Of course, if it becomes an irritation or a frustration, you should move on. We have an email notification system so we can let you know when there is an update.

In no way is LFS supposed to be a thing which people sit around for years waiting for updates and becoming increasingly angry. Anyone who does that is bringing it upon themselves.
Scawen
Developer
I tried to describe why things take a long time, for Eric and me. I wouldn't be able to go into much more detail without listing every detail of our personal lives.

Some people do understand and some will not. There is also life outside of LFS, we have families and so on. Things happen, it's not just a constant uninterrupted 50 hours per week on LFS.

But just to clear up one myth: Eric and I do not have any other jobs. I'm not sure why people sometimes get that idea. As you can see, we are working hard on Live for Speed and there has been a lot of progress these last few years. But it's not always plain sailing. There is life outside LFS, and within LFS there is experimentation, research, trying and testing, following unexpected avenues, backtracking, trying again, and so on.

I do say occasionally, if our aim was to make the most money possible, we should have chosen another job or way of working. But that's not the aim here. The aim is to develop something we like, working in the way we like, get paid for it and enjoy life as well. It's a great thing to be able to have some time to spend with the people you love. Some people do miss out on that part of life through working too hard, and I'm really happy that we have avoided that mistake. You don't have a second life to come back and do all the things you forgot to do in your first life. So you need to make sure you have time to do the things you like to do.
Scawen
Developer
I don't suppose it does any harm to let you know where we are with the tracks, as I think you can work it out anyway. The South City and Fern Bay are not yet done. Kyoto has taken longer than expected because Eric is working to a high level of detail, and the track covers a vast area. He wanted to create interesting buildings as part of the job because as an artist he wants to create good looking work.

It's similar on my side, things have taken longer than expected and one thing leads to another, so I end up working on things that were not planned in the first place. Maybe if we had a project manager they could keep us to timescales and limit our work accordingly. But I think it's a good thing that we can experiment by going down unexpected paths of development, although it does take longer, the end result can be more interesting.

I know people may say "if you don't release it quickly it will become irrelevant and obsolete" and so on but I don't really mind about those kind of opinions. We're trying to create a nice game that we are happy with, and I know a lot of people will be happy to have a go when it's ready.
April Progress Report
Scawen
Developer
Hello Racers,

As many of you know from the forum and Twitter, Eric has been working on Kyoto and I have been working on a new lighting system. In this month's progress report we would like to show you some of the work in progress and talk a bit about the lighting.

Read the whole report on the Graphics Progress Report: Kyoto and lighting page.
Scawen
Developer
Thanks for the offer. I really want to have karts in LFS when possible, and Eric does too as you can see with the kart tracks at Westhill. He likes to work from reference material when possible so your offer is interesting.

It's absolutely impossible to do it before the new tyre physics is working, for two reasons.

1) We can't add another delay to finishing the new tyre physics and graphics, for obvious reasons.

2) Karts don't work properly with the old tyre physics. I have some test karts in LFS and I use them as a test case for tyre physics. In reality, tyre physics works on a range from karts (or smaller) up to giant lorries, but the old LFS tyre model breaks down a bit when you go to those extremes.

So maybe we can talk again when the time comes. I can't give any estimates about when that might be.

The only sort of deal we can do is to put a car (or kart) in LFS without payments either way. We receive the reference materials / photos / drawings / 3D files / a lot of information about the setup and permission to use a real vehicle (without time limit). The vehicle provider gets some exposure in return, and that's about it.

We can't commit to anything at the moment, but it's an interesting thought.
No March progress report
Scawen
Developer
Dear Racers,

Sorry but we aren't ready for a progress report this month.

Eric has been working on Kyoto and I have been working on the lighting system.

Progress is good and we are really on the case.

My head is quite scrambled from the work so thanks for your patience!

Scawen


EDIT: See below a video of a lighting experiment at Aston.
https://www.lfs.net/forum/post/1947087#post1947087
Last edited by Scawen, .
Scawen
Developer
No, sorry. But it is OK to have an old version on your hard drive and you can use that any time for old time's sake.

It's not really possible for Eric to update old tracks with new textures, while also updating the track to how he actually wants it to be now.

And we can't have the old tracks just there with old textures either, as some kind of historical museum piece. Big grin Actually the old tracks don't even work properly in the new graphics system, which is why Eric has to go through all the tracks doing a big overhaul.

But the "museum pieces" are still there, you just have to run the old version. https://www.lfs.net/archive
Scawen
Developer
Quote from three_jump :As it came up a few times now. When you talk about CPU loads (or hardware requirements in general) and optimisation / performance considerations, do you have a specific plattform in mind?
Of course having lean and fast code is always a plus, but with the new lighting system (and tire physics) I would guess some people might to upgrade their PC.

No, I don't have any specific requirements in mind. It's really hard to say, without having loads of computers to test on. That's where the community will come in and we'll have to see how it goes when it goes into public testing. Anyone who struggles with the current LFS version will definitely need to upgrade as the shadow maps are quite heavy and the textures with shine level in the alpha channel take more memory. Also the higher mesh details are becoming a serious graphics card memory consideration. You can't reduce that by selecting half texture resolution.

I think LFS would be completely dead as a business if we only targeted the latest graphics cards. We earn an income from many customers in countries where the latest super gaming rig is just too much to afford, so I really hope that LFS will be able to run well with a lot of cars on track on computers with a few years old performance levels.

On the other hand Eric is using the new features and trying to get the graphics up to a certain level so the graphics card and CPU requirements are increasing.

Quote from 5tag :Okay this looks awesome and all but *for now* can you please limit it to static daytime? Give us the updated tracks to play with first. Dynamic lighting and nighttime opens a whole other can of worms that would push this patch many months further away.

You seem to think Eric already has all the tracks finished and we are just waiting for me now. But that is not the case.

Quote from Bass-Driver :@Scawen:
Did you do something to make it harder to crack this game?
especially after this big update.

Not yet but that is another project on my list.

Lighting, tyre physics and the master server protocol are my priorities.
FGED GREDG RDFGDR GSFDG